/************************************
 * Package: RGcpp					*
 * Authors: Rui Eduardo Gouveia Gil	*
 * Date: 2010						*
 ************************************/
#ifndef __RGCPP_ENCODER_H_
#define __RGCPP_ENCODER_H_

#include <string>

#include "rgcpp/structs/Map.h"

namespace rgcpp
{

class Encoder
{
	private:
		static bool init;
		static Map<std::string,char> decodeMap;
		static Map<char,std::string> encodeMap;

	public:
		static std::string decode(const std::string& request);
		static std::string encode(const std::string& response);

	private:
		static void initMaps();

};

}

#endif
